package com.gcxy.service;

import com.gcxy.core.PageVO;
import com.gcxy.core.R;
import com.gcxy.dto.export.DownloadFileDTO;
import com.gcxy.dto.export.ExportRecordPageDTO;
import com.gcxy.entity.ExportRecord;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gcxy.entity.Guidance;
import com.gcxy.vo.record.ExportRecordVO;

import javax.servlet.http.HttpServletResponse;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 导出周报记录表 服务类
 * </p>
 *
 * @author Huang先森
 * @since 2024-07-22
 */
public interface ExportRecordService extends IService<ExportRecord> {

    /**
     * 生成文件
     *
     * @param dto
     */
    R<?> createFile(DownloadFileDTO dto);

    /**
     * 生成文件
     * @param dto
     * @param targetPath
     */
    void createFile(DownloadFileDTO dto, String targetPath);

    /**
     * 通过id下载文件
     *
     * @param id
     * @param response
     * @return
     */
    R<?> download(Integer id, HttpServletResponse response);

    /**
     * 分页查询导出记录
     *
     * @param exportRecordPageDto
     * @return
     */
    R<PageVO<ExportRecordVO>> getExportRecordByPage(ExportRecordPageDTO exportRecordPageDto);

}
